package com.uam.sgr.deuda.actions;

import java.util.List;
import java.util.Map;

import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
import com.uam.sgr.deuda.dto.CuentaxPagarDTO;
import com.uam.sgr.deuda.services.BuscarDeudasServiceI;
import com.uam.sgr.deuda.services.ConsultarDDeudasServiceI;
import com.uam.sgr.deuda.services.DeudaBusinessDelegate;
import com.uam.sgr.matricula.services.BuscarMatriculaServiceI;
import com.uam.sgr.matricula.services.MatriculaBusinessDelegate;
import com.uam.sgr.seguridad.dto.UsuarioMixDTO;

public class CuentaxPagarAction extends ActionSupport {

	private static final long serialVersionUID = 1L;
	private Map<String, Object> miSesion;
	private ConsultarDDeudasServiceI objConsultarDDeudasService = DeudaBusinessDelegate
			.getConsultarDDeudasService();
	private BuscarDeudasServiceI objBusDeudasService = DeudaBusinessDelegate
			.getBuscarDeudasService();
	private BuscarMatriculaServiceI objBuscarMatriculaService = MatriculaBusinessDelegate
			.getBuscarMatriculaService();
	private List<CuentaxPagarDTO> lstCuentaxPagar;
	private String mensaje;

	public String getMensaje() {
		return mensaje;
	}

	public void setMensaje(String mensaje) {
		this.mensaje = mensaje;
	}

	public Map<String, Object> getMiSesion() {
		return miSesion;
	}

	public void setMiSesion(Map<String, Object> miSesion) {
		this.miSesion = miSesion;
	}

	public BuscarDeudasServiceI getObjBusDeudasService() {
		return objBusDeudasService;
	}

	public void setObjBusDeudasService(BuscarDeudasServiceI objBusDeudasService) {
		this.objBusDeudasService = objBusDeudasService;
	}

	public ConsultarDDeudasServiceI getObjConsultarDDeudasService() {
		return objConsultarDDeudasService;
	}

	public void setObjConsultarDDeudasService(
			ConsultarDDeudasServiceI objConsultarDDeudasService) {
		this.objConsultarDDeudasService = objConsultarDDeudasService;
	}

	public BuscarMatriculaServiceI getObjBuscarMatriculaService() {
		return objBuscarMatriculaService;
	}

	public void setObjBuscarMatriculaService(
			BuscarMatriculaServiceI objBuscarMatriculaService) {
		this.objBuscarMatriculaService = objBuscarMatriculaService;
	}

	public List<CuentaxPagarDTO> getLstCuentaxPagar() {
		return lstCuentaxPagar;
	}

	public void setLstCuentaxPagar(List<CuentaxPagarDTO> lstCuentaxPagar) {
		this.lstCuentaxPagar = lstCuentaxPagar;
	}

	public String cargaCuentaxPagar() {

		miSesion = ActionContext.getContext().getSession();

		UsuarioMixDTO usuario = new UsuarioMixDTO();

		usuario = (UsuarioMixDTO) miSesion.get("usuario");

		lstCuentaxPagar = objConsultarDDeudasService
				.listarDeudasxAlumno(usuario.getCodUsu());

		miSesion.put("lstCuentaxPagar", lstCuentaxPagar);

		return SUCCESS;

	}

	public String buscarCuentaxPagar() {

		String vista = null;

		miSesion = ActionContext.getContext().getSession();

		UsuarioMixDTO usuario = new UsuarioMixDTO();

		usuario = (UsuarioMixDTO) miSesion.get("usuario");

		lstCuentaxPagar = objBusDeudasService.buscarDeudasxAlumno(usuario
				.getCodUsu());

		if (lstCuentaxPagar.size() == 0) {

			vista = "exito";

		} else {
			
			
			System.out.println("Fracaso "+ lstCuentaxPagar.size());

			vista = "fracaso";
			mensaje = getText("usuario.valida.deuda");
		}

		return vista;
	}
}
